<script setup>
const dateArr = ref([])
function getDatesForLastWeek() {
  // 获取当前日期的 Date 对象
  const today = new Date()
  // 用于存储日期对象的数组
  const dates = []

  // 循环从今天开始往前推 7 天
  for (let i = 0; i < 7; i++) {
    // 创建一个新的 Date 对象，基于今天往前推 i 天
    const date = new Date(today)
    date.setDate(today.getDate() - i) // 设置日期为今天减去 i 天
    dates.push(date) // 将日期对象添加到数组中
  }

  // 返回日期对象数组，今日的 Date 对象在数组最后
  return dates
}

// 测试方法
const datesArray = getDatesForLastWeek()
datesArray.forEach((date) => {
  dateArr.value.unshift(date.toISOString().split('T')[0])
})

const options = ref({
  title: {
    text: '各题型数量(个)'
  },
  tooltip: {
    trigger: 'axis'
  },
  legend: {
    data: ['单选题', '多选题', '判断题', '简答题']
  },
  grid: {
    left: '3%',
    right: '4%',
    bottom: '3%',
    containLabel: true
  },
  toolbox: {
    feature: {
      saveAsImage: {}
    }
  },
  xAxis: {
    type: 'category',
    boundaryGap: false,
    data: dateArr.value
  },
  yAxis: {
    type: 'value'
  },
  series: [
    {
      name: '单选题',
      type: 'line',
      data: [20, 10, 25, 35, 15, 35, 20]
    },
    {
      name: '多选题',
      type: 'line',
      data: [10, 20, 25, 25, 15, 20, 10]
    },
    {
      name: '判断题',
      type: 'line',
      data: [5, 10, 10, 10, 20, 5, 5]
    },
    {
      name: '简答题',
      type: 'line',
      data: [5, 5, 2, 1, 3, 5, 2]
    }
  ]
})
</script>

<template>
  <Echart width="100%" :options="options" />
</template>

<style lang="scss" scoped></style>
